Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Ітераційні методи розвязування СЛАР

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютерні методи дослідження інформаційних процесів та систем
Варіант:
1 4 52

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра ЗІ             ЗВІТ До лабораторної роботи №3 з курсу: «Комп’ютерні методи дослідження інформаційних процесів і систем» на тему: «Ітераційний метод для розв’язування систем лінійних алгебраїчних рівнянь» Варіант №1           Мета роботи – ознайомлення з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь.   ЗАВДАННЯ ДО ЛАБОРАТОРНОЇ РОБОТИ Розв’язати систему лінійних алгебраїчних рівнянь ітераційний методом.   / / Блок-схема програми Текст прогами using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication25 { class Program { static void Main(string[] args) { Iterations xD = new Iterations(); xD.Initialization(); xD.PerevirkaZbizhnosti(); xD.SomeCalculations(); xD.Checking(); Console.ReadKey(); } } class Iterations { public int k, p, kil; public double s, b, rez, E; public double[] x0 = new double[4]; public double[] x1 = new double[4]; public double[] e = new double[4]; static public double[,] a; public double[,] alpha; public double[] beta; public void Initialization() { Console.Write("\n Введiть заданий коефiцiєнт k = "); k = int.Parse(Console.ReadLine()); Console.Write("\n Введiть заданий коефiцiєнт p = "); p = int.Parse(Console.ReadLine()); s = 0.2 * k; b = 0.2 * p; E = 0.0001; a = new double[,]{{ 30.3, 12.62+s, 4.1, 1.9, -10.55+b}, {3.92, 8.45, -(1.78-s), 1.4, 12.21} {3.77, 1.21+s, 8.04, 0.28, 15.45-b}, {2.21, 3.65-s, 1.69, 9.99, -8.35}}; alpha = new double[a.GetLength(0), a.GetLength(0)]; beta = new double[a.GetLength(0)]; } public void SomeCalculations() { for (int i = 0; i < a.GetLength(0); i++) { for (int j = 0; j < a.GetLength(0); j++) { if (i != j) alpha[i, j] = -(a[i, j] / a[i, i]); } } for (int i = 0, j = (a.GetLength(1) - 1); i < a.GetLength(0); i++) beta[i] = (a[i, j] / a[i, i]); for (int i = 0; i < beta.GetLength(0); i++) x0[i] = beta[i]; do { for (int i = 0; i < alpha.GetLength(0); i++) { x1[i] = beta[i]; for (int j = 0; j < alpha.GetLength(0); j++) x1[i] = x1[i] + x0[j] * alpha[i,j]; e[i] = Math.Abs(x1[i] - x0[i]); x0[i] = x1[i]; } kil++; } while (!(e[0] < E && e[1] < E && e[2] < E && e[3] < E)); } public void PerevirkaZbizhnosti() { for (int i = 0; i < a.GetLength(0); i++) { rez = 0; for (int j = 0; j < a.GetLength(0); j++) if ( i != j) rez += Math.Abs(a[i,j]); if (rez > Math.Abs(a[i,i])) Console.WriteLine("Умови збiжностi не виконуються"); } } public void Checking() { Console.WriteLine("Коренi рiвняння:"); foreach (int x in x1) Console.Write("\t" + x); double z = x1[0] * a[0, 0] + x1[1] * a[0, 1] + x1[2] * a[0, 2] + x1[3] * a[0, 3]; double z1 = x1[0] * a[1, 0] + x1[1] * a[1, 1] + x1[2] * a[1, 2] + x1[3] * a[1, 3]; double z2 = x1[0] * a[2, 0] + x1[1] * a[2, 1] + x1[2] ...
Антиботан аватар за замовчуванням

28.05.2013 18:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини